package com.turing.post.organization.util;

import javax.ejb.Local;
import javax.ejb.Remote;

import com.turing.post.util.PCPSApplicationException;
import com.turing.post.util.PCPSWebInput;

/**
 * 发卡商业务逻辑接口
 * 
 * @author zxp
 * @Dec 17, 2012
 */
@Remote
@Local
public interface IssueCompanyBusiness {

	/**
	 * 新增发卡商业务新增前验证编号长度
	 * 
	 * @param webInput
	 *            日志记录对象
	 * @param issueCompany
	 *            发卡商
	 * @throws PCPSApplicationException
	 */
	public void insertIssueCompanyInfo(PCPSWebInput webInput,
			IssueCompany issueCompany) throws PCPSApplicationException;

	/**
	 * 修改发卡商业务
	 * 
	 * @param webInput
	 *            日志记录对象
	 * @param issueCompany
	 *            发卡商
	 * @throws PCPSApplicationException
	 */
	public void updateIssueCompanyInfo(PCPSWebInput webInput,
			IssueCompany issueCompany) throws PCPSApplicationException;

	/**
	 * 设置发卡商收益分配比率
	 * 
	 * @param webInput
	 *            日志记录对象
	 * @param issueCompany
	 *            发卡商
	 * @throws PCPSApplicationException
	 */
	public void updateIssueCompanyCommissionRatio(PCPSWebInput webInput,
			IssueCompany issueCompany) throws PCPSApplicationException;

	/**
	 * 修改发卡商业务参数数据One
	 * 
	 * @param webInput
	 *            日志记录对象
	 * @param issueCompany
	 *            发卡商
	 * @throws PCPSApplicationException
	 */
	public void updateIssueCompanyBaseInfo(PCPSWebInput webInput,
			IssueCompany issueCompany) throws PCPSApplicationException;

	/**
	 * 修改发卡商业务参数数据Two
	 * 
	 * @param webInput
	 *            日志记录对象
	 * @param issueCompany
	 *            发卡商
	 * @throws PCPSApplicationException
	 */
	public void updateIssueCompanyBaseParameter(PCPSWebInput webInput,
			IssueCompany issueCompany) throws PCPSApplicationException;

	/**
	 * 修改发卡商业务参数数据Three
	 * 
	 * @param webInput
	 *            日志记录对象
	 * @param issueCompany
	 *            发卡商
	 * @throws PCPSApplicationException
	 */
	public void updateIssueCompanyCardParameter(PCPSWebInput webInput,
			IssueCompany issueCompany) throws PCPSApplicationException;
}
